package com.eastfair.imaster.vo;

import com.eastfair.imaster.enumeration.VisitorRegisterStateRegisterTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 实体类
 *
 * </p>
 *
 * @author zjn
 * @since 2021-08-23
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class VisitorRegisterStateVO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @ApiModelProperty(value = "id")
    private Long id;

    /**
     * 项目id
     */
    @ApiModelProperty(value = "项目id")
    private Long projectId;

    /**
     * 展会id
     */
    @ApiModelProperty(value = "展会id")
    private Long exhibitionId;

    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    private Long userAccountId;

    /**
     * 观众注册表id
     */
    @ApiModelProperty(value = "观众注册表id")
    private Long visitorRegisterId;

    /**
     * 来源 #{imaster:I展通;bzt:B展通}
     */
    @ApiModelProperty(value = "来源 SystemSourceEnum")
    private String source;

    /**
     * 审核状态
     */
    @ApiModelProperty(value = "审核状态")
    private String auditState;

    /**
     * 审核时间
     */
    @ApiModelProperty(value = "审核时间")
    private LocalDateTime auditTime;

    /**
     * 卡号
     */
    @ApiModelProperty(value = "卡号")
    private String cardNumber;

    /**
     * 展立方观众id
     */
    @ApiModelProperty(value = "展立方观众id")
    private String syncVisitorId;

    /**
     * 注册方式 #{imaster:注册预登记;team:团体预登记;abroad:海外预登记;bzt:B展通}
     */
    @ApiModelProperty(value = "注册方式 #{imaster:注册预登记;team:团体预登记;abroad:海外预登记;bzt:B展通}")
    private VisitorRegisterStateRegisterTypeEnum registerType;

    /**
     * 是否是金卡用户：1是；0否
     */
    @ApiModelProperty(value = "是否是金卡用户：1是；0否")
    private Integer isGolden;

    /**
     * 是否是认证观众：1是；0否
     */
    @ApiModelProperty(value = "是否是认证观众：1是；0否")
    private Integer isAuthentication;

    /**
     * 是否参加线下：1是；0否
     */
    @ApiModelProperty(value = "是否参加线下：1是；0否")
    private Integer isOffline;

    /**
     * 是否完成完善信息：1是；0否
     */
    @ApiModelProperty(value = "是否完成完善信息：1是；0否")
    private Integer isCompleteInfo;

    /**
     * 是否完成问卷：1是；0否
     */
    @ApiModelProperty(value = "是否完成问卷：1是；0否")
    private Integer isCompleteQuestion;

    /**
     * 数据来源 pc/app/mini_programs
     */
    @ApiModelProperty(value = "数据来源 pc/app/mini_programs")
    private String terminalType;

    /**
     * 版本信息
     */
    @ApiModelProperty(value = "版本信息 ")
    private String terminalDevice;

}